import request from '@/config/axios'

// erp系统 商户 VO
export interface MerchantVO {
  id: number // 商户编号
  name: string // 客户名称
  contact: string // 联系人
  mobile: string // 手机号码
  telephone: string // 联系电话
  email: string // 电子邮箱
  remark: string // 备注
  status: number // 开启状态
  sort: number // 排序
  taxNo: string // 纳税人识别号
  taxPercent: number // 税率
  bankName: string // 开户行
  bankAccount: string // 开户账号
  bankAddress: string // 开户地址
  cooperationDegree: boolean // 合作等级
  belongProvince: string // 归属省份
  belongCity: string // 归属城市
  belongDistrict: string // 归属区
  belongAddress: string // 归属地址
  longitude: string // 商户经度
  latitude: string // 商户纬度
  settleType: boolean // 结算类型
  hasInvoice: boolean // 是否开票
  invoiceType: boolean // 开票类型
}

// erp系统 商户 API
export const MerchantApi = {
  // erp系统 商户分页
  getMerchantPage: async (params: any) => {
    return await request.get({ url: `/erp/merchant/page`, params })
  },

  getMerchantSimpleList: async () => {
    return await request.get({ url: `/erp/merchant/simple-list` })
  },

  // erp系统 商户详情
  getMerchant: async (id: number) => {
    return await request.get({ url: `/erp/merchant/get?id=` + id })
  },

  // 新增erp系统 商户
  createMerchant: async (data: MerchantVO) => {
    return await request.post({ url: `/erp/merchant/create`, data })
  },

  // 修改erp系统 商户
  updateMerchant: async (data: MerchantVO) => {
    return await request.put({ url: `/erp/merchant/update`, data })
  },

  // 更新报销的审核状态
  updateMerchantCheckState: async (id: number, checkState: number) => {
    return await request.put({
      url: `/erp/merchant/update-check`,
      params: {
        id,
        checkState
      }
    })
  },

  // 删除erp系统 商户
  deleteMerchant: async (id: number) => {
    return await request.delete({ url: `/erp/merchant/delete?id=` + id })
  },

  // 导出erp系统 商户 Excel
  exportMerchant: async (params) => {
    return await request.download({ url: `/erp/merchant/export-excel`, params })
  },
}
